#include "ipmi.h"
#define LIBRARY_PATH	"./commands/netfn_0x%02x_cmd_0x%02x.so"

typedef struct {
    uint8 privilege;
    uint8 channel;
    uint16 (*command_entrance)();
} cmd_assigments_t;

typedef void (*register_command_f)(cmd_assigments_t* cmd_assigments);

typedef struct {
    void* enable;
    register_command_f register_command;
    cmd_assigments_t cmd_assigments;
} table_cmd_t;

typedef struct {
    uint8 netfn;
    table_cmd_t cmds[COMMAND_NUMBERS];
} table_netfn_t;

